#include "H/Function_Init.H"


#define RGB_LED_MAX		1

#define 	LED_LOGIC_HIGH		COLOR_LED=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();COLOR_LED=0
#define 	LED_LOGIC_LOW		COLOR_LED=1;_nop_();COLOR_LED=0;_nop_();


uint8_t RGBLed_Buf[RGB_LED_MAX][3];


void RGB_Convert(uint8_t buf);


void RGB_Led_Init(void)
{
	color_set(0x00, 0x0f, 0x00);
	
//	color_set(0x00, 0x00, 0x00);
	
//	color_set(30, 144, 255);
}


void color_set(uint8_t clr_r, uint8_t clr_g, uint8_t clr_b)
{
	uint8_t i;
	for(i = 0; i < RGB_LED_MAX ;i++)
	{
		RGBLed_Buf[i][0] = clr_r;
		RGBLed_Buf[i][1] = clr_g;
		RGBLed_Buf[i][2] = clr_b;
	}
}


void RGB_Led_Fresh(void)
{
	uint8_t i,j;
	EA = 0;
	for(j = 0; j < RGB_LED_MAX ;j++)
	{
		for(i = 0; i < 3 ;i++)
		{
			RGB_Convert(RGBLed_Buf[j][i]);
		}
	}
	EA = 1;
}



void RGB_Convert(uint8_t buf)
{
	uint8_t buf_bit[8];
	
	buf_bit[0] = ((0 == (buf & 0x80))?0:1);
	buf_bit[1] = ((0 == (buf & 0x40))?0:1);
	buf_bit[2] = ((0 == (buf & 0x20))?0:1);
	buf_bit[3] = ((0 == (buf & 0x10))?0:1);
	buf_bit[4] = ((0 == (buf & 0x08))?0:1);
	buf_bit[5] = ((0 == (buf & 0x04))?0:1);
	buf_bit[6] = ((0 == (buf & 0x02))?0:1);
	buf_bit[7] = ((0 == (buf & 0x01))?0:1);

	if(0 == buf_bit[0])
	{
		LED_LOGIC_LOW;
	}
	else
	{
		LED_LOGIC_HIGH;
	}
	if(0 == buf_bit[1])
	{
		LED_LOGIC_LOW;
	}
	else
	{
		LED_LOGIC_HIGH;
	}

	if(0 == buf_bit[2])
	{
		LED_LOGIC_LOW;
	}
	else
	{
		LED_LOGIC_HIGH;
	}

	if(0 == buf_bit[3])
	{
		LED_LOGIC_LOW;
	}
	else
	{
		LED_LOGIC_HIGH;
	}

	if(0 == buf_bit[4])
	{
		LED_LOGIC_LOW;
	}
	else
	{
		LED_LOGIC_HIGH;
	}

	if(0 == buf_bit[5])
	{
		LED_LOGIC_LOW;
	}
	else
	{
		LED_LOGIC_HIGH;
	}

	if(0 == buf_bit[6])
	{
		LED_LOGIC_LOW;
	}
	else
	{
		LED_LOGIC_HIGH;
	}

	if(0 == buf_bit[7])
	{
		LED_LOGIC_LOW;
	}
	else
	{
		LED_LOGIC_HIGH;
	}
	
	COLOR_LED = 0;
	
	
	
//	if(0x80 == (buf & 0x80))
//	{
//		LED_LOGIC_HIGH;
//	}
//	else
//	{
//		LED_LOGIC_LOW;
//	}
//	
//	if(0x40 == (buf & 0x40))
//	{
//		LED_LOGIC_HIGH;
//	}
//	else
//	{
//		LED_LOGIC_LOW;
//	}
//	
//	if(0x20 == (buf & 0x20))
//	{
//		LED_LOGIC_HIGH;
//	}
//	else
//	{
//		LED_LOGIC_LOW;
//	}
//	
//	if(0x10 == (buf & 0x10))
//	{
//		LED_LOGIC_HIGH;
//	}
//	else
//	{
//		LED_LOGIC_LOW;
//	}
//	
//	if(0x08 == (buf & 0x08))
//	{
//		LED_LOGIC_HIGH;
//	}
//	else
//	{
//		LED_LOGIC_LOW;
//	}
//	
//	if(0x04 == (buf & 0x04))
//	{
//		LED_LOGIC_HIGH;
//	}
//	else
//	{
//		LED_LOGIC_LOW;
//	}
//	
//	if(0x02 == (buf & 0x02))
//	{
//		LED_LOGIC_HIGH;
//	}
//	else
//	{
//		LED_LOGIC_LOW;
//	}
//	
//	if(0x01 == (buf & 0x01))
//	{
//		LED_LOGIC_HIGH;
//	}
//	else
//	{
//		LED_LOGIC_LOW;
//	}
	
//	(0x80 == (buf & 0x80))?LED_LOGIC_HIGH:LED_LOGIC_LOW;
//	(0x40 == (buf & 0x40))?LED_LOGIC_HIGH:LED_LOGIC_LOW;
//	(0x20 == (buf & 0x20))?LED_LOGIC_HIGH:LED_LOGIC_LOW;
//	(0x10 == (buf & 0x10))?LED_LOGIC_HIGH:LED_LOGIC_LOW;
//	(0x08 == (buf & 0x08))?LED_LOGIC_HIGH:LED_LOGIC_LOW;
//	(0x04 == (buf & 0x04))?LED_LOGIC_HIGH:LED_LOGIC_LOW;
//	(0x02 == (buf & 0x02))?LED_LOGIC_HIGH:LED_LOGIC_LOW;
//	(0x01 == (buf & 0x01))?LED_LOGIC_HIGH:LED_LOGIC_LOW;
}


